Circuit and Method for Reading a Memory Cell of a Non-Volatile Memory Device

ABSTRACT

A circuit for reading a memory cell of a non-volatile memory device provided with a memory array with cells arranged in wordlines and bitlines, among which a first bitline, associated to the memory cell, and a second bitline, has: a first circuit branch associated to the first bitline and a second circuit branch associated to the second bitline, each with a local node, coupled to which is a first dividing capacitor, and a global node, coupled to which is a second dividing capacitor; a decoder stage for coupling the local node to the first or second bitlines and coupling the global node to the local node; and a differential comparator stage supplies an output signal indicative of the datum stored; and a control unit for controlling the decoder stage, the coupling stage, and the differential comparator stage for generation of the output signal.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to Italian Application No. 102016000024496, filed on Mar. 9, 2016, which application is hereby incorporated herein by reference.

TECHNICAL FIELD

The present invention relates to a circuit and a method for reading a memory cell of a non-volatile memory device, for example of a floating-gate flash type. As will be described in detail hereinafter, the reading circuit and method do not envisage the use of reference circuit elements or structures for reading the datum stored in the memory cell.

BACKGROUND

In a known way, and as illustrated schematically in FIG. 1, a non-volatile memory device, designated by 1, for example of a flash type, generally comprises a memory array 2 made up of a plurality of memory cells 3, arranged in rows (usually defined as wordlines, WL), and columns (usually defined as bitlines, BL).

Each memory cell 3 is constituted by a storage element, for example formed by a floating-gate transistor in flash memories, with gate terminal designed to be coupled to a respective wordline WL, a first conduction terminal designed to be coupled to a respective bitline BL and a second conduction terminal connected to a reference potential (for example ground, gnd). In particular, the gate terminals of the memory cells 3 of a same wordline WL are connected together.

A reading circuit 4 (represented schematically in FIG. 1) enables selection, on the basis of address signals received at the input (generated in a known manner and designated in general by AS), of the memory cells 3, and in particular of the corresponding wordlines WL and bitlines BL each time addressed, enabling biasing thereof at appropriate voltage and current values during the operations of reading of the data stored.

The reading circuit 4 provides in particular a reading path, which is designed to create a conductive path between the bitlines BL of the memory array 2 each time selected and a sense-amplifier stage, of a differential type, designed to compare the current circulating in the addressed (i.e., activated) memory cell 3, which receives an appropriate biasing voltage on the respective gate terminal, with a reference current, in order to determine the value of the datum stored and consequently generate a digital reading signal, indicative of the datum stored.

A reading circuit 4, of a known type, thus envisages in general, as illustrated schematically in FIG. 2, a sense-amplifier stage, designated by 6, having: a first differential input 6 a, coupled to a memory cell 3 (to the gate terminal of which an appropriate row-biasing voltage V_(WL) is supplied), from which it receives a cell reading current I_(cell), the value of which is a function of the datum stored; a second differential input 6 b, coupled to a reference circuit element 8, from which it receives a reference current I_(ref); and an output 6 c that supplies a digital output signal S_(out), the value of which is a function of the comparison between the cell reading current I_(cell) and the reference current I_(ref), and is indicative of the value of the datum stored in the memory cell 3, activated for reading the same datum.

In known solutions, the aforesaid reference circuit element 8 may for example be: a reference cell 8 a, which is structurally the same as the memory cell 3 that is to be read and has electrical characteristics controlled and known beforehand (for supplying a known value of the reference current I_(ref)); or else a reference-current generator 8 b, designed to generate the same reference current I_(ref), of a desired value.

The reading operation of the datum stored in the memory cell 3 thus envisages detection of the cell reading current I_(cell) and its comparison with the reference current I_(ref), in order to generate, via the sense-amplifier stage 6, the digital output signal S_(out). For instance, in the case where the cell reading current I_(cell) is higher than the reference current I_(ref), the digital output signal S_(out) may have a high logic value, ‘1’; whereas the digital output signal S_(out) may have a low logic value, ‘0’, in the opposite case, where, that is, the cell reading current I_(cell) is lower than the reference current I_(ref).

The present Applicant has realized that the solutions of a known type for carrying out reading of the data stored in the memory cells of non-volatile memory devices may not be compatible with the requirements of size reduction (the so-called “scaling down”) of memory cells, and of simultaneous increase in electrical performance (in particular, in terms of increase in reading speed, or likewise of reduction of the access time and consumption), envisaged by technological progress.

SUMMARY

Embodiments of the present invention provide a solution for reading a memory cell of a non-volatile memory device, with improved electrical performance and reduced area occupation.

According to the present invention, a circuit for reading a memory cell of a non-volatile memory device and a corresponding reading method are provided, as defined in the annexed claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the present invention, preferred embodiments thereof are now described purely by way of non-limiting example, with reference to the attached drawings, wherein:

FIG. 1 shows a general block diagram of a non-volatile memory device, of a known type;

FIG. 2 shows a general block diagram of a reading circuit in the non-volatile memory device of FIG. 1, which is also of a known type;

FIG. 3 shows a circuit for reading a memory cell, according to an embodiment of the present invention;

FIGS. 4, 5, 6 a-6 c, and 7 a-7 c show the reading circuit of FIG. 3, with voltage values indicated on respective nodes, in given operating conditions, referring to an operation of reading of a datum stored in the memory cell; and

FIGS. 8, 9 a-9 b show plots of electrical quantities in the reading circuit of FIG. 3.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

A particular aspect of the present solution envisages, as will be described in detail, first with reference to FIG. 3, elimination, for the reading operations, of a reference circuit element (whether this is a reference memory cell, or a reference-current generator, or any other element purposely provided for generating a reference electrical quantity or comparison electrical quantity). For this purpose, the present solution envisages execution of an operation of comparison between electrical quantities associated to two bitlines of the memory array 2, and in particular the bitline BL to which the memory cell 3 belongs, activated for reading of the datum stored, and a different bitline BL′, for example the (physically or logically) adjacent bitline in the same memory array 2.

With reference to FIG. 3, an embodiment of a reading circuit, designated by 20, is now described, which implements a hierarchical column decoding with two decoding levels, local and global, in a non-volatile memory device (for example, the non-volatile memory device 1 of FIG. 1, of a flash type with floating-gate memory cells).

The reading circuit 20 (of which only the elements required for the description of the present solution are shown) comprises a control unit 21 (represented schematically), and moreover a circuit branch 22, 22′ for each of the bitlines of the memory array 2. In FIG. 3, as in the subsequent figures, reference is made only to two adjacent bitlines BL and BL′ of the memory array 2.

In what follows, for simplicity of exposition, only the circuit branch 22 will be described, altogether similar considerations evidently applying also to the circuit branch 22′ (as on the other hand is evident from an examination of the aforesaid FIG. 3).

In detail, the circuit branch 22 comprises a number of elements. At least one local decoding transistor 23, in the example of an NMOS type, has a first conduction terminal connected to a local node N_(l), which is coupled to a local bitline BL_(l), and which is in turn physically connected to the bitline BL and to the memory cell 3 activated for reading (here represented schematically as a generator of the cell reading current I_(cell)). A second conduction terminal is connected to a global node N_(g), coupled to a global bitline BL_(g) (also referred to as “main bitline”), which represents a level of decoding hierarchically higher than the local bitline BL_(l). A control terminal of the transistor 23 receives a local decoding signal VY0 from the control unit 21 of the non-volatile memory device 1.

The circuit branch 22 also comprises at least one global decoding transistor 25, in the example of an NMOS type, having a first conduction terminal connected to the global node N_(g), a second conduction terminal connected to an internal node N_(i), and a control terminal receiving a global decoding signal VYN from the control unit 21. The circuit branch 22 also comprises at least one protection transistor 26, in the example of an NMOS type, having a first conduction terminal connected to the internal node N_(i), a second conduction terminal connected to a comparison node N_(c), on which a comparison voltage V_(c) is present, and a control terminal receiving a biasing signal V_(b).

The circuit branch 22 also comprises an enabling transistor 28, in the example of a PMOS type, having a first conduction terminal connected to the comparison node N_(c), a second conduction terminal connected to a supply terminal, which receives a supply voltage V_(DD) for supplying the memory device 1, and a control terminal, which receives an enabling signal EN.

In a way that will be evident to a person skilled in the field, the local column decoding, for selection and biasing of the local bitline BL_(l), could be implemented by further local decoding transistors (here not illustrated), and likewise the global column decoding, for selection and biasing of the global bitline BL_(g), could be implemented by further global decoding transistors (not illustrated here, either), depending on the size of the memory array 2 and the decoding requirements.

The local decoding transistor 23′ of the circuit branch 22′ receives on the control terminal a respective local decoding signal, designated by VY1, whereas the global decoding transistor 25′ receives the same global decoding signal VYN of the global decoding transistor 25 (typically, a number of local bitlines, for example four, may in fact be selectively coupled to a same global bitline, which consequently selects and biases a “sector” of the memory array 2 constituted by the memory cells 3 connected to these local bitlines).

The protection transistor 26′ of the circuit branch 22′ receives the same biasing signal V_(b) as the protection transistor 26, whereas the enabling transistor 28′ receives a respective enabling signal EN′. In particular, the aforesaid protection transistors 26, 26′ have a cascode function; i.e., the value of the biasing voltage V_(b) is such as to set a maximum value allowed for the voltages of the underlying internal nodes N_(i), N_(i)′, preventing any possible stresses and damage during reading.

Furthermore, the enabling transistors 28, 28′ have the function of enabling pre-charging of the nodes of the circuit branches 22, 22′ and of the parasitic capacitances associated to the corresponding bitlines BL, BL′.

Referring to FIG. 3, a first parasitic capacitor 30 (represented with a dashed line) is coupled between the local node N_(l), associated to the local bitline BL_(l), and the ground reference gnd of the reading circuit 20. A second parasitic capacitor 32 (which is also represented with a dashed line) is coupled between the global node N_(g), associated to the global bitline BL_(g), and the same ground reference gnd.

In general, as will on the other hand be evident to a person skilled in the field, the capacitance C_(g) of the second parasitic capacitor 32, i.e., the parasitic capacitance associated to the global bitline BL_(g), is much greater (for example, at least by one order of magnitude) than the capacitance C_(l) of the first parasitic capacitor 30, i.e., the parasitic capacitance associated to the local bitline BL_(l).

The values of the capacitances C_(l) and C_(g) associated to the circuit branch 22 are further substantially equal to the values of the corresponding capacitances C_(l)′ and C_(g)′ associated to the circuit branch 22′.

Incidentally, it is pointed out that the ratios of the resistances associated to the global bitline BL_(g) and the local bitline BL_(l) are instead typically opposite, the local bitline BL_(l) being in fact normally more resistive than the global bitline BL_(g).

The circuit branch 22 further comprises a further output capacitor 34, which may be parasitic or be physically present in the circuit, between the comparison node N_(c) and the ground reference gnd.

The value of capacitance C_(o) of this output capacitor 34 is much lower than the capacitance C_(g) associated to the global bitline BL_(g) of the same circuit branch 22; furthermore, the value of capacitance C_(o) of the output capacitor 34 of the circuit branch 22 is substantially equal to the value of capacitance C_(o)′ of the output capacitor 34′ of the circuit branch 22′.

The reading circuit 20 further comprises a sense-amplifier stage 36, of a differential type, having a first input 36 a and a second input 36 b, connected, respectively, to the comparison node N_(c) of the circuit branch 22 and to the comparison node N_(c)′ of the circuit branch 22′, which consequently receive the respective comparison voltages V_(c), V_(c)′, and an output 36 c supplying a digital output signal, once again designated by S_(out), having a logic value ‘1’ or ‘0’, indicative of the value of the datum stored in the memory cell 3 activated for reading.

According to a particular aspect of the present solution, the reading circuit 20 further comprises a coupling stage formed by a first coupling transistor 40, in the example of an NMOS type, which is connected between the global nodes N_(g) and N_(g)′ of the circuit branches 22, 22′ and has a control terminal receiving an equalization signal EQ; and a second coupling transistor 41, which in the example is also of an NMOS type, is connected between the internal nodes N_(i), N_(i)′ of the circuit branches 22, 22′, and has a respective control terminal receiving the same equalization signal EQ.

As will be discussed in detail hereinafter, the first and second coupling transistors 40, 41 have the function of equalizing the nodes on their terminals, referred to the circuit branches 22, 22′ of the adjacent bitlines BL, BL′, guaranteeing that the corresponding voltage values are substantially equal, in given operating conditions.

A description of the operation of the reading circuit 20, during reading of the datum stored in the memory cell 3, is now presented; this operation is in general articulated in three distinct operating steps consecutive with respect to one another, managed by the control unit 21, by generation and supply of appropriate biasing signals:

a first operating step, for preparation of the voltages at the nodes, and in particular for pre-charging of the parasitic capacitors 30, 32 of the circuit branch 22;

a second operating step, for equalization of the voltages at the nodes of the circuit branches 22 and 22′; and

a third operating step, for unbalancing, on the basis of the value of the datum stored in the memory cell 3, of the voltages on the global nodes N_(g) and N_(g)′ of the circuit branches 22, 22′ and consequently of the comparison voltages V_(c), V_(c)′ on the comparison nodes N_(c) and N_(c)′, and of comparison of the same voltages V_(c), V_(c)′ for generation of the digital output signal S_(out) indicative of the value of the stored datum.

In greater detail and with reference to FIG. 4, the first operating step envisages the following conditions:

local decoding signal VY0 high (i.e., local decoding transistor 23 on);

local decoding signal VY1 low (local decoding transistor 23′ off; for this reason, local decoding transistor 23′ is not represented in FIG. 4);

enabling signal EN low (enabling transistor 28 on);

enabling signal EN′ high (enabling transistor 28′ off);

equalization signal EQ low (first and second coupling transistors 40, 41 off);

global decoding signal VYN on (global decoding transistors 25, 25′ on); and biasing signal V_(b) high (protection transistors 26, 26′ on).

These operating conditions mean that the capacitances of the parasitic capacitors 30, 32 of the local and global bitlines of the circuit branch 22 are pre-charged, in particular at the same value V_(dd)−V_(b) (as shown in the aforesaid FIG. 4). Instead, the adjacent bitline BL′ is at ground, with substantially zero voltage values on the nodes of the circuit branch 22′ (in particular, on the global node N_(g)′ and consequently on the internal node N_(i)′ and on the comparison node N_(c)′).

The memory cell 3 is, in this step, still off or deactivated (in a way not illustrated, the corresponding wordline WL has not yet been addressed and/or biased at the value required by the reading operation).

Then, during the second operating step, see FIG. 5, the operating conditions are modified as follows:

the local decoding signal VY0 is switched to the low value (local decoding transistor 23 is off);

the enabling signal EN is switched to the high value (enabling transistor 28 is off); and

the equalization signal EQ is switched to the high value (coupling transistors 40, 41 are on).

Switching-on of the coupling transistors 40, 41 causes a process of equalization between the adjacent bitlines BL, BL′, and of charge division between the corresponding parasitic capacitors 32, 32′.

In particular, the voltages on the global nodes N_(g), N_(g)′ substantially reach a same value, (V_(dd)−V_(b))/2, i.e., a value lower, as regards the circuit branch 22, than the value assumed during the previous, pre-charging, step.

Switching-off of the enabling transistors 28, 28′ causes the voltages on the comparison nodes N_(c), N_(c)′ to go to the same value of the internal nodes N_(i), N_(i)′, which are in turn substantially equal to the aforesaid voltages on the global nodes N_(g), N_(g)′.

Furthermore, the voltage on the local node N_(l) of the circuit branch 22, associated to the memory cell 3 to be read, remains at the initial value V_(dd)−V_(b) (due to switching-off of the local decoding transistor 23 and the floating condition of the same local node N_(l)).

The wordline WL associated to the memory cell 3 is in the meantime addressed and appropriately biased (in a per se known manner), by the control unit 21, in such a way that the cell reading current I_(cell) flows in the memory cell 3, as a function of the datum stored. In particular, the row-biasing voltage V_(WL) is supplied to the gate terminal of the memory cell.

The third operating step then follows, where two different operating conditions may arise according to whether the datum stored in the memory cell 3 to be read is a logic ‘1’ or a logic ‘0’.

As shown in FIG. 6a , the equalization signal EQ again goes low, for turning off the coupling transistors 40, 41; the wordline WL has reached the correct biasing value.

In the case where the datum is a ‘1’, the cell current I_(cell) acquired from the memory cell 3 has discharged the local node N_(l), bringing about a reduction of the voltage value thereof with respect to the value assumed in the previous step (i.e., V_(dd)−V_(b)), possibly reaching a zero value.

Then (FIG. 6b ), the local decoding signal VY0 is switched again to the high value, by switching on the local decoding transistor 23, which thus connects the local node N_(l) to the global node N_(g).

The resulting charge division between the first and second parasitic capacitors 30, 32 leads to a consequent reduction of the voltage value on the global node N_(g).

In detail, it is assumed that the relation C_(g)=10·C_(l) holds and that the cell current I_(cell) is negligible in the calculation.

The sum of the amount of charge stored in the parasitic capacitors 30, 32 remains constant following capacitive division.

The relation Q=C·V, which links the amount of charge, the capacitance, and the voltage of the parasitic capacitors 30, 32, is applied before and after the step of switching-on of the local decoding transistor 23.

In particular, the initial amount of charge (i.e., at the start of the aforesaid third step) stored in the first parasitic capacitor 30 is:

Q(C _(l))₁ =C _(l) ·V(C _(l))₁

where V(C_(l))₁ is assumed equal to 0, on the hypothesis that the memory cell 3 has altogether discharged the capacitance of the first parasitic capacitor 30.

The initial amount of charge stored in the second parasitic capacitor 32 is instead given by

Q(C _(g))₁ =C _(g) ·V(C _(g))₁

where V(C_(g))₁ is equal to (V_(dd)−V_(b))/2, on the basis of what has been discussed previously.

Furthermore, the final amount of charge (i.e., following upon the process of charge division due to switching-on of the local decoding transistor 23) stored in the first parasitic capacitor 30 is

Q(C _(l))₂ =C _(l) ·V(C _(l))₂

where V(C_(l))₂ is a final value V_(f).

Likewise, the final amount of charge stored in the second parasitic capacitor 32 is

Q(C _(g))₂ =C _(g) ·V(C _(g))₂

where V(C_(g))₂ is equal to the same final value V_(f), by virtue of the process of charge division.

By equaling the total sum of the initial and final amounts of charge, on the aforesaid hypothesis C_(g)=10·C_(l), we obtain

Q(C _(l))₁ +Q(C _(g))₁ =Q(C _(l))₂ +Q(C _(g))₂

0+10C _(l)·(V _(dd) −V _(b))/2=C _(l) ·V _(f)+10C _(l) ·V _(f)

whence

V _(f)=5/11·(V _(dd) −V _(b))=0.45·(V _(dd) −V _(b))

This final value V_(f) is consequently lower than the initial voltage of the global node N_(g), equal to (V_(dd)−V_(b))/2.

It should be noted that, since the cell current I_(cell) is non-negligible in the real case, the final value V_(f) is generally still lower than the value indicated.

As shown in FIG. 6c , at the end of the third step, the local decoding signal VY0 is switched again to the low value, thus switching off the local decoding transistor 23, for “freezing” the values of the voltages on the local and global nodes N_(l), N_(g) (stored in the corresponding first and second parasitic capacitors 30, 32).

At this point, present on the first and second differential inputs 36 a, 36 b of the sense-amplifier stage 36 are two distinct voltage values, with the comparison voltage V_(c) of the circuit branch 22 (which is substantially equal to the final value V_(f)) that is lower than the comparison voltage V_(c)′ of the circuit branch 22′ (which has remained at the initial value equal to (V_(dd)−V_(b))/2).

The digital output signal S_(out) has in this case a first logic value, for example high, indicating reading of a logic ‘1’ in the memory cell 3.

In general, the time allowed to the memory cell 3 during reading to discharge the local node N_(l), in the case of cell at ‘1’ has to be sufficient for providing a significant variation of voltage, or likewise a significant variation of charge so that in the subsequent capacitive division a significant reduction in the voltage of the global node N_(g) and of the comparison node N_(c) occurs, and a sufficient voltage difference is thus present that may be detected by the differential sense-amplifier structure.

There now follows a similar analysis of the case where the datum stored in the memory cell 3 is a logic ‘0’.

As shown in FIG. 7a (which, as the previous FIG. 6a , refers to start of the third reading step), since the datum is a ‘0’, in this case there is no discharge current through the memory cell 3. Consequently, there does not takes place any discharge of the first parasitic capacitor 30 and any reduction of the voltage value of the local node N_(l), which thus remains at the initial value (V_(dd)−V_(b)).

As shown in FIG. 7b , the local decoding signal VY0 is then switched to the high value, as described in regard to the previous case. However, in this case, the voltage value of the local node N_(l) is higher than the voltage value of the global node N_(g), which in fact initially is equal to (V_(dd)−V_(b))/2.

The resulting charge division between the first and second parasitic capacitors 30, 32 thus leads to an increase in the value of the voltage on the same global node N_(g).

In detail, assuming once again that the relation C_(g)=10·C_(l) applies, the initial amount of charge (i.e., at start of the aforesaid third step) stored in the first parasitic capacitor 30 is given by

Q(C _(l))₁ =C _(l) ·V(C _(l))₁

where V(C_(l))₁ is in this case equal to V_(dd)−V_(b).

The initial amount of charge stored in the second parasitic capacitor 32 is given by

Q(C _(g))₁ =C _(g) ·V(C _(g))₁

where V(C_(g))₁ is equal to (V_(dd)−V_(b))/2.

Furthermore, the final amount of charge (i.e., following upon the process of charge division due to switching-on of the local decoding transistor 23) stored in the first parasitic capacitor 30 is

Q(C _(l))₂ =C _(l) ·V(C _(l))₂

where V(C_(l))₂ is a final value V_(f).

Likewise, the final amount of charge stored in the second parasitic capacitor 32 is

Q(C _(g))₂ =C _(g) ·V(C _(g))₂

where V(C_(g))₂ is equal to the final value V_(f), by virtue of the process of charge division.

Equating the total sum of the initial and final amounts of charge, on the aforesaid hypothesis where C_(g)=10·C_(l), we obtain

Q(C _(l))₁ +Q(C _(g))₁ =Q(C _(l))₂ +Q(C _(g))₂

C _(l)·(V _(dd) −V _(b))+10C _(l)·(V _(dd) −V _(b))/2=C _(l) ·V _(f)+10C _(l) ·V _(f)

whence

V _(f)=6/11·(V _(dd) −V _(b))=0.54·(V _(dd) −V _(b))

This final value V_(f) is in this case consequently higher than the initial voltage on the global node N_(g), equal to (V_(dd)−V_(b))/2.

As shown in FIG. 7c , at the end of the third step, the local decoding signal VY0 is again switched to the low value, thus switching off the local decoding transistor 23 for “freezing” the values of the voltages on the local and global nodes N_(l), N_(g).

At this point, on the first and second differential inputs 36 a, 36 b of the sense-amplifier stage 36 two distinct voltage values are present, with the comparison voltage V_(c) of the circuit branch 22 (substantially equal to the final value V_(f)) that is in this case higher than the comparison voltage V_(c)′ of the circuit branch 22′ (which has remained at the initial value of (V_(dd)−V_(b))/2).

The digital output signal S_(out) consequently has in this case a second logic value, for example low, indicating reading of a logic ‘0’ in the memory cell 3.

A description of some graphs that plot the evolution of the main control signals and of the main voltages on the nodes in the reading circuit 20, during the reading operation previously described in detail, is now presented.

In particular, FIG. 8 shows, with reference to the operating steps described previously (referred to as “step 1”, “step 2”, and “step 3”), the waveforms of: the local decoding signals VY0, of the adjacent circuit branches 22, 22′; the row-biasing voltage V_(WL) associated to the wordlines WL of the memory cell 3 activated for reading; the enabling signal EN; and the equalization signal EQ.

FIG. 9a shows the plots of the comparison voltages V_(c), V_(c)′ of the adjacent circuit branches 22, 22′ in the case of reading of a stored datum having value ‘1’. In particular, it is pointed out, in the enlarged plot illustrated in the bottom portion of FIG. 9a , how, during the last operating step, the comparison voltage V_(c) drops below the comparison voltage V_(c)′, following upon charge division subsequent to discharging of the local node N_(l) of the circuit branch 22 by the memory cell 3.

Likewise, FIG. 9b shows the plots of the comparison voltages V_(c), V_(c)′ of the adjacent circuit branches 22, 22′ in the case of reading of a stored datum having a value ‘0’; in particular, it is pointed out in this case that, following upon switching of the local decoding signal VY0 to the high state, in this case the local node N_(l) is at a voltage value higher than the global node N_(g) of the same circuit branch, with the final result that the comparison voltage V_(c) is higher than the comparison voltage V_(c)′, following upon charge division.

In the embodiment illustrated, the present solution thus envisages exploitation of the hierarchical configuration of column decoding, provided with global and local decoding, which intrinsically offers two capacitances on which it is possible to implement the mechanism of charge division for detection of the datum stored. In particular, the parasitic capacitances C_(l) and C_(g) associated to the local and global bitlines BL_(l), BL_(g) are exploited, with the parasitic capacitance C_(l) associated to the local bitline BL_(l) that is lower (for example, by one order of magnitude) than the parasitic capacitance C_(g) associated to the global bitline BL_(g).

The present solution envisages exploitation of the aforesaid mechanism of charge division to cause, in the circuit branch 22, the capacitance C_(g) associated to the global bitline BL_(g), which determines the comparison voltage V_(c) seen by the sense-amplifier stage 36, to be either discharged or charged by the capacitance C_(l) of the local bitline BL_(l), according to whether the datum stored in the memory cell 3 is a ‘1’ or a ‘0’.

In particular, in the case where a ‘1’ is read, the capacitance C_(l) of the local bitline BL_(l) discharges and, once connected to the global bitline BL_(g), also the global bitline BL_(g) discharges. Instead, in the case where a ‘0’ is read, if the capacitance C_(l) is at a voltage value higher than that of the capacitance C_(g), it will be the capacitance C_(l) that transfers charge onto the capacitance of the global bitline BL_(g), leading to a rise in voltage.

Therefore: considering the initial voltage V_(gi) at which the capacitance C_(g) of the global bitline Bl_(g) is found following upon the pre-charging step, the value of the voltage of the local bitline B_(l) in the worst case of a stored datum equal to ‘0’ (V_(l) ₀ ), and the value of the voltage of the same local bitline B_(l) in the worst case of a stored datum equal to ‘1’ (V_(l) ₁ ), the present solution envisages that the following relation will hold

V _(l) ₁ <V _(gi) <V _(l) ₀

In a per se known manner, the ‘0’ and ‘1’ logic values ideally represent, as regards ‘0’ the total absence of current, such as not to move the drain node of the memory cell, i.e., an open circuit; and as regards ‘1’, the dual condition, i.e., a short circuit such as to bring the drain of the memory cell to ground. The worst values are extreme values that may lead to confusion between the two logic values, thus, a cell at ‘0’ that, however, absorbs a non-zero current or a cell at ‘1’ that absorbs less current than what is expected, and generally have a value that depends upon the sensitivity of the reading circuit.

In particular, in the solution proposed, the operation of equalization between the bitlines BL, BL′ advantageously enables exploitation of the bitline BL′ adjacent to the one associated to the memory cell 3 activated for reading, which thus has substantially the same values of parasitic capacitance, acting on two structures that may be deemed identical for fixing the aforesaid initial voltage value V_(gi).

During the reading operation, the comparison node N_(c)′ of the bitline BL′ does not substantially modify its own voltage value with respect to the initial pre-charging value, whereas the comparison node N_(c) of the bitline BL, thanks to the capacitive division, modifies its own voltage value, which becomes higher or lower according to the datum to be read.

The advantages of the solution proposed are clear from the foregoing description.

In any case, it is again emphasized that the solution does not envisage, for reading the datum stored, the use of any reference element or structure, in particular does not envisage the use of a memory reference cell or of a current derived therefrom, or of a reference-current generator.

Consequently, the resulting memory device 1 has smaller dimensions and lower electrical consumption as compared to traditional solutions.

The reading speed is further increased. In particular, via the solution described it is possible, for example, to read in a same step (i.e., during a same read operation) an entire half of the bitlines BL of the memory array 2, for example the odd ones, and, in the subsequent step, the other half of the bitlines BL, in the example all the even ones. In other words, the bitlines BL of a first half are thus, in one step, the ones read and, in the subsequent step, operate as comparison (i.e., as bitlines BL′, according to what has been described previously) for reading the bitlines of the other half.

The solution described does not further envisage any substantial modifications to the architecture of the non-volatile memory device 1, apart from introduction of the coupling transistors 40, 41 between adjacent bitlines BL, BL′, and an adequate generation of the control signals for the timing and management of the operating reading steps by the control unit 21.

Finally, it is clear that modifications and variations may be made to what has been described and illustrated herein, without thereby departing from the scope of the present invention, as defined in the annexed claims.

In this regard, it is emphasized that the solution described may be applied to different types of non-volatile memory devices (of an embedded or stand-alone type), for example EPROMs, EEPROMs, or PCMs (Phase-Change Memories), with single-level or multilevel memory cells, in which a comparison of current is required for reading the datum stored.

In general, for application of this solution the presence of two distinct nodes in the decoding column is sufficient (i.e., the nodes previously referred to as the local node N_(l) and the global node N_(g)), associated to which are different values of capacitance, for implementation of the strategies of charge division described. In particular, in the case where one or both of the parasitic capacitances coupled to these nodes are not present, purposely provided charge-division capacitors may be inserted, electrically connected to the same nodes, in order to implement the solution described.

Furthermore, a different embodiment may envisage the presence of a single coupling transistor between the adjacent bitlines BL, BL′, for example the coupling transistor 40 referred to previously (even though in general, the solution with two coupling transistors 40, 41 may offer a greater guarantee of proper operation and correct reading of the datum stored). 

1. A reading circuit for reading a memory cell of a non-volatile memory device provided with a memory array with memory cells arranged in wordlines and bitlines, the bitlines including a first bitline associated with the memory cell to be read and a second bitline distinct from the first bitline, the reading circuit comprising: a first circuit branch associated with the first bitline, the first circuit branch having a first local node that is coupled to a first dividing capacitor, and a first global node that is coupled to a second dividing capacitor; a second circuit branch associated with the second bitline, the second circuit branch having a second local node that is coupled to a third dividing capacitor, and a second global node that is coupled to a fourth dividing capacitor; a decoder stage configured to selectively couple the first local node to the first bitline, to selectively couple the first global node to the first local node, to selectively couple the second local node to the second bitline, and to selectively couple the second global node to the second local node; a differential comparator stage having a first input selectively coupleable to the first global node, a second input selectively coupleable to the second global node, and an output configured to supply an output signal that has a value indicative of data stored in the memory cell; a coupling stage, configured to selectively couple the first global node and the second global node; and a control unit configured to control, during a reading operation, the decoder stage, the coupling stage, and the differential comparator stage for generation of the output signal.
 2. The circuit according to claim 1, wherein the control unit is configured to control: a first operating step of pre-charging, in which the first and second global nodes and the first and second local nodes are pre-charged to a pre-charging voltage; a second operating step of equalization, in which the coupling stage couples the first global node to the second global node that the first global node and the second global node reach a common initial voltage; and a third operating step of reading of the data stored, in which: the first local node is coupled to the first bitline and to the memory cell, activated for reading, so that a respective voltage value discharges, or does not discharge, as a function of the data stored; then, the first local node is coupled to the first global node to generate a charge division between the first and second dividing capacitors, following upon which the voltage value of the global node goes to a value higher, or lower, than the initial value, as a function of the data stored; and then, the differential comparator stage generates the output signal, based on a comparison between a first comparison voltage that is a function of the voltage of the first global node and a second comparison voltage that is a function of the voltage of the second global node.
 3. The circuit according to claim 2, wherein the control unit is configured to determine a duration of time in which the first local node is coupled to the first bitline and to the memory cell activated for reading, so that the voltage of the first local node, following upon the coupling, goes to a first value, lower than the initial voltage when the data stored is a logic ‘1’, and goes to a second value, higher than the initial voltage when the data stored is a logic ‘0’.
 4. The circuit according to claim 1, further comprising a column-decoder stage comprising: a first local decoding transistor having a first conduction terminal connected to the first local node, a second conduction terminal connected to the first global node, and a control terminal coupled to receive a first local decoding signal from the control unit; a first global decoding transistor, having a first conduction terminal connected to the first global node, a second conduction terminal connected to a first internal node, and a control terminal coupled to receive a first global decoding signal from the control unit; a second local decoding transistor having a first conduction terminal connected to the second local node, a second conduction terminal connected to the second global node, and a control terminal coupled to receive a second local decoding signal from the control unit; and a second global decoding transistor, having a first conduction terminal connected to the second global node, a second conduction terminal connected to a second internal node, and a control terminal coupled to receive a second global decoding signal from the control unit; wherein the first internal node is selectively coupleable to the first input of the differential comparator stage, and the second internal node is selectively coupleable to the second input of the differential comparator stage.
 5. The circuit according to claim 4, wherein the coupling stage comprises a first coupling transistor connected between the first and second global nodes and having a control terminal coupled to receive an equalization signal from the control unit.
 6. The circuit according to claim 5, wherein the coupling stage further comprises a second coupling transistor connected between the first and second internal nodes and having a control terminal coupled to receive the equalization signal.
 7. The circuit according to claim 1, wherein the first and second bitlines are adjacent in the memory array, have substantially equivalent values of capacitance for the first dividing capacitor and third dividing capacitor, and have substantially equivalent values of capacitance for the second dividing capacitor and the fourth dividing capacitor.
 8. The circuit according to claim 1, wherein the first and second dividing capacitors are parasitic capacitors associated with the first bitline and where in the third and fourth dividing capacitors are parasitic capacitors associated with the second bitline.
 9. The circuit according to claim 1, wherein a value of capacitance of the second dividing capacitor is higher than a value of capacitance of the first dividing capacitor.
 10. The circuit according to claim 1, wherein the first bitline and the second bitline are complementary bitlines.
 11. A non-volatile memory device, comprising: a memory array with memory cells arranged in wordlines and bitlines; and the reading circuit according to claim 1, the reading circuit being coupled to the memory array and designed to implement an operation of reading of the data stored in the memory cells of the memory array.
 12. The memory device according to claim 11, wherein the memory cells comprise flash memory cells.
 13. A memory device comprising: an array of non-volatile memory cells arranged in wordlines and bitlines, the bitlines including a bitline and a complementary bitline; a first local decoding transistor having a current path coupled between the bitline and a first global node; a first global decoding transistor having a current path coupled between the first global node and a first internal node; a second local decoding transistor having a current path coupled between the complementary bitline and a second global node; a second global decoding transistor having a current path coupled between the second global node and a second internal node; a differential comparator stage having a first input and a second input; a first protection transistor with a current path coupled between the first internal node and the first input of the differential comparator stage; a second protection transistor with a current path coupled between the second internal node and the second input of the differential comparator stage; a first equalization transistor coupled between the first global node and the second global node; and a control unit coupled to control terminals of the first local decoding transistor, the first global decoding transistor, the second local decoding transistor, and the second global decoding transistor.
 14. The memory device of claim 13, further comprising a first dividing capacitor coupled between bitline and the first local decoding transistor, a second dividing capacitor coupled to the first global node, a third dividing capacitor coupled between the complementary bitline and the second local decoding transistor, and a fourth dividing capacitor coupled to the second global node.
 15. The memory device of claim 14, wherein the first, second, third, and fourth dividing capacitors are parasitic capacitors.
 16. The memory device of claim 14, wherein a value of capacitance of the second dividing capacitor is higher than a value of capacitance of the first dividing capacitor and wherein a value of capacitance of the fourth dividing capacitor is higher than a value of capacitance of the third dividing capacitor.
 17. The memory device according to claim 14, wherein the first local decoding transistor is coupled to the bitline at a first local node, wherein the second local decoding transistor is coupled to the complementary bitline at a second local node, and wherein the control unit is configured to control: a first operating step of pre-charging, in which the first and second global nodes and the first and second local nodes are pre-charged to a pre-charging voltage; a second operating step of equalization, in which the first global node is coupled to the second global node so that the first global node and the second global node reach a common initial voltage; and a third operating step of reading of a datum stored, in which: the first local node is coupled to a memory cell of the bitline so that a respective voltage value discharges or does not discharge as a function of a datum stored in the memory cell; then, the first local node is coupled to the first global node to generate a charge division between the first and second dividing capacitors, following upon which the voltage value of the first global node goes to a value that is higher or lower than the initial value as a function of the datum stored in the memory cell; and then, the differential comparator stage generates an output signal based on a comparison between a first comparison voltage that is a function of the voltage of the first global node and a second comparison voltage that is a function of the voltage of the second global node. 18-22. (canceled)
 23. The memory device of claim 16, wherein the value of capacitance of the second dividing capacitor is equal to the value of capacitance of the fourth dividing capacitor, and wherein the value of capacitance of the first dividing capacitor is equal to the value of capacitance of the third dividing capacitor.
 24. The memory device of claim 13, wherein the array of non-volatile memory cells comprises flash memory cells.
 25. The memory device of claim 17, wherein the control unit is configured to determine a duration of time in which the first local node is coupled to the bitline and to the memory cell activated for reading, so that the voltage of the first local node, following upon the coupling, goes to a first value, lower than the initial voltage when the data stored is a logic ‘1’, and goes to a second value, higher than the initial voltage when the data stored is a logic ‘0’. 